home *** CD-ROM | disk | FTP | other *** search
Wrap
Text File | 1994-12-08 | 43.0 KB | 1,145 lines | [ TEXT/R*ch]
C.S.M.P. Digest Thu, 15 Oct 92 Volume 1 : Issue 184 Today's Topics: System Extension sample source wanted!! PLstrcmp?? Do the right thing! IM 1-7 vs New: FILES, PROCESSES, MEMORY Books STUFFIT FORMAT Problem writing INIT/cdev A/ROSE Best text compression? How do you launch a Control Panel? Top byte of 24-bit offscreen gworld? The Comp.Sys.Mac.Programmer Digest is moderated by Michael A. Kelly. The digest is a collection of article threads from the internet newsgroup comp.sys.mac.programmer. It is designed for people who read c.s.m.p. semi- regularly and want an archive of the discussions. If you don't know what a newsgroup is, you probably don't have access to it. Ask your systems administrator(s) for details. (This means you can't post questions to the digest.) Each issue of the digest contains one or more sets of articles (called threads), with each set corresponding to a 'discussion' of a particular subject. The articles are not edited; all articles included in this digest are in their original posted form (as received by our news server at cs.uoregon.edu). Article threads are not added to the digest until the last article added to the thread is at least one month old (this is to ensure that the thread is dead before adding it to the digest). Article threads that consist of only one message are generally not included in the digest. The entire digest is available for anonymous ftp from ftp.cs.uoregon.edu [128.223.8.8] in the directory /pub/mac/csmp-digest. Be sure to read the file /pub/mac/csmp-digest/README before downloading any files. The most recent issues are available from sumex-aim.stanford.edu [36.44.0.6] in the directory /info-mac/digest/csmp. If you don't have ftp capability, the sumex archive has a mail server; send a message with the text '$MACarch help' (no quotes) to LISTSERV@ricevm1.rice.edu for more information. The digest is also available via email. Just send a note saying that you want to be on the digest mailing list to mkelly@cs.uoregon.edu, and you will automatically receive each new issue as it is created. Sorry, back issues are not available through the mailing list. Send administrative mail to mkelly@cs.uoregon.edu. ------------------------------------------------------- From: Minh Lang <minh@inst-sun1.jpl.nasa.gov> Subject: System Extension sample source wanted!! Organization: Jet propulsion Laboratory Date: Tue, 28 Jul 1992 15:43:57 GMT I am looking for some sample source for writing System Extension. I would appreciate any pointer or info (ftp sites, books etc...). Thanks. == Minh == +++++++++++++++++++++++++++ From: ins712r@aurora.cc.monash.edu.au (Heng Chiang) Organization: Monash University Date: Wed, 29 Jul 1992 05:03:58 GMT minh@inst-sun1.jpl.nasa.gov (Minh Lang) writes: : I am looking for some sample source for writing System Extension. : I would appreciate any pointer or info (ftp sites, books etc...). : Thanks. : == Minh == Me TOO! I have found a lot of source code for general applications but I haven't seen any for control panels / extensions. I would really like to know how people actually start writing extensions (INIT) with the horrible lack of documentation. I would rather prefer email, because I generally do not check this particular group. Thanks! Heng. - -- Heng Chiang Internet: ins712r@lindblat.cc.monash.edu.au STRESS - The confusion created when ins712r@aurora.cc.monash.edu.au the mind overrides the body's urge dgentley@yoyo.cc.monash.edu.au to choke the living daylight out of RULE 1 - The female is always some deserving people. - Unknown *right*? - Somebody +++++++++++++++++++++++++++ From: haynes@mace.cc.purdue.edu (Carl W. Haynes III) Date: 29 Jul 92 09:11:58 GMT Organization: Purdue University In article <1992Jul29.050358.4513@monu6.cc.monash.edu.au> ins712r@aurora.cc.monash.edu.au (Heng Chiang) writes: >minh@inst-sun1.jpl.nasa.gov (Minh Lang) writes: >: I am looking for some sample source for writing System Extension. >Me TOO! I have found a lot of source code for general applications >but I haven't seen any for control panels / extensions. I would >really like to know how people actually start writing extensions (INIT) >with the horrible lack of documentation. The best piece of documentation I've seen on writing INITs was an article by Eric Shapiro that I pulled off of AOL called "Writing INITs in Think C". I'm not sure if it's available in any of the archives. If you can't find it and don't have access to AOL let me know and I'll e-mail a copy to any one who wants it. This article has the best INIT shell I've seen. The second edition of Macintosh Programming Secrets also has info on writing inits, including patching traps. I personally think that someone should write a whole book on low-level stuff like drivers and inits. If your interested in communications, Programming with AppleTalk has an example of an INIT. The Macintosh C Programming Primer Vol II has an example of an INIT, although it does not patch any traps which is usually what you want to do when you write an INIT. However, it has a good example of a cdev. Personally, I learned how to write INITs by deciding on something that I wanted to do and posting lots of questions. Like most aspects of Mac programming, writing INIT's has a pretty steep learning curve, but the rewards definately are worth the effort. - -- Carl W. Haynes III Haynes Consulting Services || CWH3@aol.com PO Box 2715 || haynes@mace.cc.purdue.edu W. Lafayette, IN 47906 || hcs@applelink.apple.com - ---------------------------------------------------------------------- Macintosh Programming & Consulting -- I am currently seeking Macintosh development contracts, available immediately. +++++++++++++++++++++++++++ From: peirce@outpost.SF-Bay.org (Michael Peirce) Date: 29 Jul 92 17:01:54 GMT Organization: Peirce Software In article <1992Jul29.050358.4513@monu6.cc.monash.edu.au> (comp.sys.mac.programmer), ins712r@aurora.cc.monash.edu.au (Heng Chiang) writes: > minh@inst-sun1.jpl.nasa.gov (Minh Lang) writes: > : I am looking for some sample source for writing System Extension. > : I would appreciate any pointer or info (ftp sites, books etc...). > : Thanks. > : == Minh == > > Me TOO! I have found a lot of source code for general applications > but I haven't seen any for control panels / extensions. I would > really like to know how people actually start writing extensions (INIT) > with the horrible lack of documentation. The book "Programming with AppleTalk" from Addison-Wesley (and written by me) has a complete RDEV/INIT example. This is a Chooser interface (the RDEV part) as well as an INIT that installs some code into the system heap (to listen to an AppleTalk socket). - -- Michael Peirce -- peirce@outpost.SF-Bay.org - -- Peirce Software -- Suite 301, 719 Hibiscus Place - -- -- San Jose, California USA 95117 - -- Makers of... -- voice: (408) 244-6554 fax: (408) 244-6882 - -- SMOOTHIE -- AppleLink: peirce & America Online: AFC Peirce +++++++++++++++++++++++++++ From: keith@taligent.com (Keith Rollin) Date: 31 Jul 92 07:03:17 GMT Organization: Taligent In article <55395@mentor.cc.purdue.edu>, haynes@mace.cc.purdue.edu (Carl W. Haynes III) writes: > > The second edition of Macintosh Programming Secrets also has info on writing > inits, including patching traps. I personally think that someone should write > a whole book on low-level stuff like drivers and inits. Me, too... :-) - -- Keith Rollin Phantom Programmer Taligent, Inc. --------------------------- From: jpurlia@qualcomm.com (John Purlia) Subject: PLstrcmp?? Do the right thing! Date: 28 Jul 92 21:51:57 GMT Organization: Qualcomm, Inc. Has anyone else noticed the effective weirdness of PLstrcmp in MPW? I'm using qsort to sort a list of pascal style strings in ascending alphabetic order. My comparison function basically uses a PLstrcmp to test equality of the list elements. Here's the weird part: PLstrcmp thinks that "Public Folder" comes before "Public". If I take the same data, convert each element to C style using p2cstr, and use strcmp in my comparison function, "Public" comes before "Public Folder" just as you would expect. Is there a known bug in PLstrcmp (MPW 3.2) or for that matter any of the other Pascal style string routines? Is there a fix or am I going to have to do the convert to C conversion all over the place? (No, the toolbox routine I'm using to get the data does not have a C string equivalent.) ........................................................................... John Purlia : My brain; not my company's brain. My brain says... jpurlia@qualcomm.com : "Just about any movie could be made better AppleLink: AM0470 : if one of the characters were a vampire." ........................................................................... +++++++++++++++++++++++++++ From: keith@taligent.com (Keith Rollin) Date: 29 Jul 92 08:33:41 GMT Organization: Taligent In article <jpurlia-280792143857@129.46.5.45>, jpurlia@qualcomm.com (John Purlia) writes: > > Has anyone else noticed the effective weirdness of PLstrcmp in MPW? I'm > using qsort to sort a list of pascal style strings in ascending alphabetic > order. My comparison function basically uses a PLstrcmp to test equality > of the list elements. Here's the weird part: PLstrcmp thinks that "Public > Folder" comes before "Public". If I take the same data, convert each > element to C style using p2cstr, and use strcmp in my comparison function, > "Public" comes before "Public Folder" just as you would expect. > > Is there a known bug in PLstrcmp (MPW 3.2) or for that matter any of the > other Pascal style string routines? Is there a fix or am I going to have > to do the convert to C conversion all over the place? (No, the toolbox > routine I'm using to get the data does not have a C string equivalent.) I don't know about PLstrcmp. If I were in your position, I'd do one of two things: - - Disassemble PLstrcmp and see WTF was going on. - - Use one of the toolbox routines that compares Pascal strings (RelString, EqualString, IUCompString, IUMagString, IUEqualString, or IUMagIDString). Here are some notes I have on the functions (I can never keep them straight!): Name Takes Case Diac Returns Trap used -------------- ------- ----- ----- ------------ ---------- RelString: Str255 spec spec -1, 0, 1 _RelString EqualString: Str255 spec spec Boolean _CmpString IUCompString: Str255 TRUE TRUE -1, 0, 1 _Pack6,#10 IUMagString: Ptr/len TRUE TRUE -1, 0, 1 _Pack6,#10 IUEqualString: Str255 FALSE FALSE Inv. Boolean _Pack6,#12 IUMagIDString: Ptr/len FALSE FALSE Inv. Boolean _Pack6,#12 The Case and Diac columns refer to whether or not the functions are sensitive to case or diacriticals. "spec" means that you can specify whether they are or not. - -- Keith Rollin Phantom Programmer Taligent, Inc. --------------------------- From: 21602MR@MSU (Mark Rosenberg) Subject: IM 1-7 vs New: FILES, PROCESSES, MEMORY Books Date: 26 Aug 92 14:48:45 GMT Organization: Michigan State University I am jumping into programming the MAC - All sources say I need IM 1, and a few other IM vols, But Addison Wesley has come out with 3 new books: Files, Processes, and Memory which replace the original IM books?? Do I STILL need to get IM v1 (with references to 128k MACs and LISA) or should I get one or all of the New books?? Thanks in advance... Please respond to the net! Mark Sartor (via Mark Rosenbergs account) +++++++++++++++++++++++++++ From: keith@taligent.com (Keith Rollin) Date: 26 Aug 92 20:12:10 GMT Organization: Taligent In article <1992Aug26.145249.19654@msuinfo.cl.msu.edu>, 21602MR@MSU (Mark Rosenberg) writes: > > I am jumping into programming the MAC - All sources say I need IM 1, and > a few other IM vols, But Addison Wesley has come out with 3 new books: > Files, Processes, and Memory which replace the original IM books?? > Do I STILL need to get IM v1 (with references to 128k MACs and LISA) > or should I get one or all of the New books?? If you can wait (and have the bucks), I'd suggest getting the new books. As you've seen, there are three now, and probably about 12 more in the wings. The whole new suite is intended to replace the old IM I-VI, as well as many of the technotes and sample code that DTS puts out. They are chock full of samples, and include a lot more background and tutorial material. The two issues with deciding to go with the new books are: - - They aren't all out, yet. - - They'll cost a lot more than IM I-VI. The three volumes that you mention run $78 in the US, so figure about $300-400 for the lot (IM I-VI comes to about $200). Of course, there may be a discount if you get all of them at once. You also might want to consider having to deal with a new set of errors and typos. For those of us who have gotten well used to the old IM's and know where all the errors are, it may be disconcerting to have to deal with a new set. Hopefully, there won't be that many (as a technical reviewer for them, I personally guarantee absolutely no errors in Files, Processes, or Memory :-) ). For people who haven't dealt with IM before, this won't be as much of a problem. - -- Keith Rollin Phantom Programmer Taligent, Inc. +++++++++++++++++++++++++++ From: sro@media.mit.edu (Shawn O'Donnell) Date: 26 Aug 92 20:40:52 GMT Organization: M.I.T. Media Laboratory > Do I STILL need to get IM v1 (with references to 128k MACs and LISA) > or should I get one or all of the New books?? Depends on who's paying. And on how long you can wait for the 15-20 volumes that make up the rest of the new series. But mostly on who's paying. +++++++++++++++++++++++++++ From: reynhout@cs.uri.edu (Andrew Reynhout) Organization: University of Rhode Island, Computer Science Dept. Date: Wed, 2 Sep 1992 22:19:18 GMT In article <BtLxGB.Hp0@taligent.com> keith@taligent.com (Keith Rollin) writes: >If you can wait (and have the bucks), I'd suggest getting the new books. As >you've seen, there are three now, and probably about 12 more in the wings. The >whole new suite is intended to replace the old IM I-VI, as well as many of the >technotes and sample code that DTS puts out. They are chock full of samples, >and include a lot more background and tutorial material. As an aside, are the code examples in C this time? Andrew - -- Andrew <reynhout@cs.uri.edu> "If you remind me of my dog, we'll probably get along" -jane siberry meow +++++++++++++++++++++++++++ From: Joe.Francis@dartmouth.edu (Joe Francis) Date: 3 Sep 92 21:01:06 GMT Organization: Dartmouth College, Hanover, NH In article <1992Sep2.221918.7093@cs.uri.edu> reynhout@cs.uri.edu (Andrew Reynhout) writes: >As an aside, are the code examples [in the new IM series] in C this time? No, still Pascal. However, the "Summary" at chapter ends where they list constants, data types, procedures, etc, now has *3* sections: Pascal, C, and Assembly. --------------------------- From: tim.meade%theweb@meaddata.com (Tim Meade) Subject: STUFFIT FORMAT Date: 29 Aug 92 10:32:00 GMT Organization: The Web BBS 1-513-436-9011 6 Lines 1200 News groups 50,000 files! I am in need of the Stuffit or Unstuffit format. Is this in the public domain? I want to do a conversion program and would like to be able to directly handle these files. Any help would be apprecitive. Please email me at tim.meade%theweb@meaddata.com thanks....Tim +++++++++++++++++++++++++++ From: sefhelp@tamuts.tamu.edu (Steve Fuller) Date: 30 Aug 92 06:03:53 GMT Organization: Texas A&M University, College Station In article <5121.1243.uupcb@meaddata.com> tim.meade%theweb@meaddata.com (Tim Meade) writes: >I am in need of the Stuffit or Unstuffit format. Is this in the public >domain? I want to do a conversion program and would like to be able to >directly handle these files. Any help would be apprecitive. > Not much chance of obtaining the new 3.0 format. HOWEVER, SD (and SL?) support ' a large number of Apple events'. Contact Aladdin for details. (408) 761-6200 or ALADDIN@Applelink If Leonard is reading, perhaps he could provide more info. Like: Can applications call the StuffIt Engine? or must the use the SD App? Can the free UnStuffIt handle Apple Events? or be externally scripted? Steve Fuller sef3179@tamsun.tamu.edu +++++++++++++++++++++++++++ From: leonardr@ccs.itd.umich.edu Organization: Campus Computing Sites, University of Michigan-Ann Arbor Date: Tue, 1 Sep 1992 05:30:37 GMT In article <1992Aug30.060353.4783@tamsun.tamu.edu> sefhelp@tamuts.tamu.edu (Steve Fuller) writes: >In article <5121.1243.uupcb@meaddata.com> tim.meade%theweb@meaddata.com (Tim Meade) writes: >>I am in need of the Stuffit or Unstuffit format. Is this in the public >>domain? I want to do a conversion program and would like to be able to >>directly handle these files. Any help would be apprecitive. >> > >Not much chance of obtaining the new 3.0 format. HOWEVER, SD (and SL?) support >' a large number of Apple events'. Contact Aladdin for details. >(408) 761-6200 or ALADDIN@Applelink > Actually we license the format information to "needy" people, we also license the StuffIt Engine for inclusion in products that wish to provide stuffing/unstuffing capabilities. You want to call Aladdin and ask to speak to licensing. >If Leonard is reading, perhaps he could provide more info. Like: >Can applications call the StuffIt Engine? or must the use the SD App? >Can the free UnStuffIt handle Apple Events? or be externally scripted? > The StuffIt Engine is still available as part of the StuffIT Deluxe and StuffIt SpaceSaver packages, and (as mentioned above) can also be licensed for direct inclusion in your own applications. Also, all of our application products (Lite, Deluxe, Expander, UnStuffIt, etc.) are all Apple event aware and include an 'aete' resource (as per the OSA guidelines) for describing the supported events. - -- - ----------------------------------------------------------------------- Leonard Rosenthol Internet: leonardr@ccs.itd.umich.edu Director of Advanced Technology AppleLink: MACgician Aladdin Systems, inc. GEnie: MACgician +++++++++++++++++++++++++++ From: jtgorman@cs.arizona.edu (J. Taggart Gorman) Date: 1 Sep 92 07:35:42 GMT Organization: Organization? We don't need no steenking organization! In article <1992Sep1.053037.39@terminator.cc.umich.edu>, Citizen leonardr@ccs.itd.umich.edu writes : > The StuffIt Engine is still available as part of the StuffIT Deluxe >and StuffIt SpaceSaver packages, and (as mentioned above) can also be >licensed for direct inclusion in your own applications. Also, all of >our application products (Lite, Deluxe, Expander, UnStuffIt, etc.) are all >Apple event aware and include an 'aete' resource (as per the OSA guidelines) This message is not necessarily aimed at Leonard. How does one read the "aete" resource? With a template, right? If so, where can I find the necessary template? My ResEdit doesn't have it (I have to dredge thru the resource in straight hex/char, ick!), and I don't recall seeing it at any ftp site? Is it in a league with BalloonWriter? (Ie, only available from ADPA?) Thanks. |--------------------------------| "If you were happy all of your life, | J. Taggart Gorman Jr. | you wouldn't be human - you'd be a | jtgorman@caslon.cs.arizona.edu | game show host." |--------------------------------| Winona Ryder, in _Heathers_ +++++++++++++++++++++++++++ From: Glen.Stewart@f175.n2240.z1.ieee.org (Glen Stewart) Date: 31 Aug 92 04:06:57 GMT Organization: FidoNet node 1:2240/175 - The Associati, Grand Blanc MI I have a couple programs here that examine StuffIt files. One contains Pascal source code. Perhaps one of them may help. If so, feel free to call the BBS. - -- =*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*= Glen Stewart - Internet: Glen.Stewart@f175.n2240.z1.ieee.org --------------------------- From: landwebe@math.rutgers.edu (Peter Landweber) Subject: Problem writing INIT/cdev Date: 3 Sep 92 05:53:43 GMT Organization: Rutgers Univ., New Brunswick, N.J. I am working on an INIT/cdev combination to be used under System 7, and I've run into a problem. At startup time, the INIT moves its resource map after the system resource map in the linked list, and it patches CloseResFile() to ignore the file. The result is that my file stays open, and its resources are always available. This is similar to what Suitcase II does with font suitcases. So far everything has gone extremely well using this technique. Now, I'm trying to add a "cdev". The problem is that when the finder opens up my file as a Control Panel, it expects my file's resource map to be the first in the linked list. Since the resource map is actually at the end of the linked list, the finder crashes. So, my questions are: 1) Is there a way for the Finder to open up a Control Panel if the file is already open, and its resource map is not at the front of the linked list? 2) Is there a way to open a file twice, with two separate resource maps? That way, I could still have one resource map linked after the system resource map, and the other at the front of the linked list. One of the maps could be read-only if necessary. Any suggestions, answers, or solutions would be greatly appreciated. - -- Greg Landweber (landwebe@math.rutgers.edu) +++++++++++++++++++++++++++ From: keith@taligent.com (Keith Rollin) Organization: Taligent Date: Thu, 3 Sep 1992 20:08:55 GMT In article <Sep.3.01.53.43.1992.13837@math.rutgers.edu>, landwebe@math.rutgers.edu (Peter Landweber) writes: > > > > I am working on an INIT/cdev combination to be used under System > 7, and I've run into a problem. > At startup time, the INIT moves its resource map after the system > resource map in the linked list, and it patches CloseResFile() to > ignore the file. The result is that my file stays open, and its > resources are always available. This is similar to what Suitcase II > does with font suitcases. So far everything has gone extremely well > using this technique. > Now, I'm trying to add a "cdev". The problem is that when the > finder opens up my file as a Control Panel, it expects my file's > resource map to be the first in the linked list. Since the resource > map is actually at the end of the linked list, the finder crashes. > > So, my questions are: > 1) Is there a way for the Finder to open up a Control Panel if the > file is already open, and its resource map is not at the front of the > linked list? > 2) Is there a way to open a file twice, with two separate resource > maps? That way, I could still have one resource map linked after the > system resource map, and the other at the front of the linked list. > One of the maps could be read-only if necessary. I have an INIT/cdev that does the same thing. However, it takes a little different approach than yours, and it seems to work. First, I don't patch CloseResFile() to keep my file open. Instead, at INIT time, I install my code, remember the file I came from, and patch InitAllPacks(). I remember my file of origin with the following routine. static void RememberMe() { FCBPBRec pb; OSErr err; pb.ioCompletion = nil; pb.ioNamePtr = gOurName; pb.ioVRefNum = 0; pb.ioRefNum = CurResFile(); pb.ioFCBIndx = 0; err = PBGetFCBInfoSync(&pb); gOurVRefNum = pb.ioFCBVRefNum; gOurDirID = pb.ioFCBParID; } I patch InitAllPacks() so that I can re-open my resource fork just before the first application is run: static pascal void MyInitAllPacks(void) { SetUpA4(); oldInitAllPacks(); if (gMyRefNum == 0) OpenAndAddMe(); RestoreA4(); } OpenAndAddMe() opens the resource fork and shuffles it behind the System file: typedef struct ResourceMap{ long dataOffset; long mapOffset; long dataLength; long mapLength; struct ResourceMap **nextMap; short refNum; short attributes; short typesOffset; short namesOffset; } ResourceMap, *ResMapPtr, **ResMapHandle; static void OpenAndAddMe() { THz currentZone; short oldFile; short refNum; ResMapHandle current = nil; ResMapHandle previous = nil; ResMapHandle ourParent = nil; ResMapHandle us = nil; ResMapHandle system = nil; currentZone = GetZone(); SetZone(SystemZone()); oldFile = CurResFile(); refNum = InlineHOpenResFile(gOurVRefNum, gOurDirID, gOurName, fsRdPerm); UseResFile(oldFile); if (refNum != -1) { current = (ResMapHandle) TopMapHndl; // First, find us (we should be on top) while ((current != nil) && ((**current).refNum != refNum)) { previous = current; current = (**current).nextMap; } if (current != nil) { ourParent = previous; us = current; } // Second, find the System system = (ResMapHandle) SysMapHndl; if ((us == nil) || (system == nil)) { CloseResFile(refNum); } else { if (ourParent != system) { // // Be sure to perform all these steps so that the // resource chain is never inconsistant or circular. // If that happens, debuggers like TMON will detonate. // if ((ResMapHandle) TopMapHndl == us) TopMapHndl = (void*) (**us).nextMap; if (ourParent) (**ourParent).nextMap = (**us).nextMap; (**us).nextMap = (**system).nextMap; (**system).nextMap = us; } gMyRefNum = refNum; } } SetZone(currentZone); } I've checked the resource chain with this setup, and my INIT/cdev file appears to get opened twice when the cdev is opened. Hope this helps, - -- Keith Rollin Phantom Programmer Taligent, Inc. --------------------------- From: mac@coos.dartmouth.edu (Alex Colvin) Subject: A/ROSE Date: 3 Sep 92 20:12:12 GMT Organization: Dartmouth College, Hanover, NH I'm looking for a realtime operating system to run on embedded 680x0s. I'm using a macintosh as a development platform. Someone mentioned A/ROSE as a possibility. I can't find anything about it. Is it supported? Is it supported by MPW? Does it run only in a nubus slot on a macintosh, or can it stand alone? Is it any use? Is there someone I can call to get details? Alex Colvin 603/643-7309 mac@coos.dartmouth.edu +++++++++++++++++++++++++++ From: rkn@Apple.COM (Richard K. Nordin) Date: 4 Sep 92 04:20:03 GMT Organization: Cybernetic Arts The A/ROSE Software Kit is available from APDA (US 800-282-2732, Int'l 408 562-3910). I could answer your other questions, but I shouldn't. But, if a real Apple person doesn't answer them, I'll do some harrassing on your behalf. - -- Hud Nordin Cybernetic Arts rkn@apple.com Post Office Box 2066 Telephone: 408.248.0377 Sunnyvale, California 94087 Facsimile: 408.248.0416 +++++++++++++++++++++++++++ From: arnold@i81s15.ira.uka.de (Arnold Niedermaier) Date: 8 Sep 1992 08:51:50 GMT Organization: University of Karlsruhe, FRG In article <1992Sep3.201212.22863@dartvax.dartmouth.edu>, mac@coos.dartmouth.edu (Alex Colvin) writes: |> I'm looking for a realtime operating system to run on embedded 680x0s. |> I'm using a macintosh as a development platform. |> Someone mentioned A/ROSE as a possibility. I can't find anything |> about it. |> Is it supported? |> Is it supported by MPW? |> Does it run only in a nubus slot on a macintosh, or can it |> stand alone? |> Is it any use? |> Is there someone I can call to get details? |> |> Alex Colvin |> 603/643-7309 |> mac@coos.dartmouth.edu - -- We are using A/ROSE the Apple/Realtime Operating System Environment in our macintosh laboratory at the institute for computer design and fault tolerance. In our configuration A/ROSE runs on Serial NB MCP cards plugged in nubus slots on macintosh computers. These cards are connected with Apple V24/RS232 cables and form a distributed system. We also use MPW as a development environment.platform. In order to run the programs under A/ROSE you have to link some spezial libraries. When we run a distributed application on the cards we use the Macs as I/O devices to monitor and control the programflow. Our main interests are to examine fault-tolerant mechanisms and fault-tolerant protocols. Therefore we have developed a communication kernel which provides communication promitives and a fault injection tool to trigger particular fault situations. Until now we have implemented and tested several fault-tolerant protocols on this system. Our expierence with A/ROSE is the following: - the programs have to be implemented in C or assembler - there is no support for floating point operations A/ROSE together with the Serial NB Card satisfies our application requirements and we are going to use it in more areas. ****************************************************************************** Arnold Niedermaier * Tel.: 49-721-608-3910 Universitaet Karlsruhe * Fax.: 49-721-370455 Inst. fuer Rechnerentwurf und Fehlertoleranz * E-Mail: arnold@ira.uka.de Postfach 69 80 * W-7500 Karlsruhe 1 Germany * --------------------------- From: agoates@nyx.cs.du.edu (Alan Goates) Subject: Best text compression? Organization: University of Denver, Dept. of Math & Comp. Sci. Date: Thu, 3 Sep 92 21:45:18 GMT First, thanks to everyone who answered my Notification Manager question. (I didn't have the latest tech notes yet) Second, does anyone know what the best published (Public Domain) algorithm is for compressing text. And does anyone know where I could get my hands on examplesource code for said algorithm (The only one I've seen is Lempel-Ziv). Thanks in advance, AL +++++++++++++++++++++++++++ From: anderson@Apple.COM (Clark Anderson) Date: 4 Sep 92 03:54:08 GMT Organization: Apple Computer Inc., Cupertino, CA agoates@nyx.cs.du.edu (Alan Goates) writes: >First, thanks to everyone who answered my Notification Manager question. >(I didn't have the latest tech notes yet) >Second, does anyone know what the best published (Public Domain) algorithm is >for compressing text. And does anyone know where I could get my hands on examplesource code for said algorithm (The only one I've seen is Lempel-Ziv). >Thanks in advance, > AL I have gotten pretty good compression on text using a Huffman algorithm. It's pretty easy to implement, any standard book on compression schemes should have it. --clark - ---------------------------------------------------------- Clark Anderson BellNet: 408-974-4593 Apple Computer, Inc. AppleLink: C.ANDERSON InterNet: anderson@apple.com I speak only for myself... - ---------------------------------------------------------- +++++++++++++++++++++++++++ From: keith@taligent.com (Keith Rollin) Organization: Taligent Date: Fri, 4 Sep 1992 07:07:32 GMT In article <71986@apple.Apple.COM>, anderson@Apple.COM (Clark Anderson) writes: > agoates@nyx.cs.du.edu (Alan Goates) writes: > > >Second, does anyone know what the best published (Public Domain) algorithm is > >for compressing text. And does anyone know where I could get my hands on > >examplesource code for said algorithm (The only one I've seen is Lempel-Ziv). > > I have gotten pretty good compression on text using > a Huffman algorithm. It's pretty easy to implement, > any standard book on compression schemes should > have it. I've never tried this myself, but someone once told me that you can get really good compression if you use a Huffman algorithm applied at the word level. Instead of counting and ranking all of the letters in the document, count the distinct words and treat each one like a single letter. This means that oft used words like "the" or "MicroSoftWord5.0Sucks" will compress down to 3 or 4 bits for the entire word. - -- Keith Rollin Phantom Programmer Taligent, Inc. +++++++++++++++++++++++++++ From: ksand@apple.com (Kent Sandvik) Date: 5 Sep 92 01:42:30 GMT Organization: Apple In article <71986@apple.Apple.COM>, anderson@Apple.COM (Clark Anderson) wrote: > I have gotten pretty good compression on text using > a Huffman algorithm. It's pretty easy to implement, > any standard book on compression schemes should > have it. For instance the new "Algorithsm in C++" by Sedgewick has a code snippet showing how it's done. Seems more and more authors are making big bucks on rewriting their books with "C++" in the title. Kent Sandvik/DTS +++++++++++++++++++++++++++ From: d88-jwa@dront.nada.kth.se (Jon W{tte) Date: 7 Sep 92 10:19:45 GMT Organization: Royal Institute of Technology, Stockholm, Sweden > agoates@nyx.cs.du.edu (Alan Goates) writes: Second, does anyone know what the best published (Public Domain) algorithm is for compressing text. And does anyone know where I could get my hands on example source code for said algorithm (The only one I've seen is Lempel-Ziv). Lempel-Ziv isn't too bad (actually, that's two whole familys of algorithms) Source avaialble for the macintosh is LZRW-1b which is a high- speed, LZ-77 derivative. "Yabba" is an LZ-78 relative that also is in the public domain. - -- Jon W{tte, h+@nada.kth.se, Sweden, Phone +46-8-107069 Help eradicate FIDO-Net <-> Usenet gateways in our time! +++++++++++++++++++++++++++ From: stauffer@cc.swarthmore.edu (Glenn Stauffer) Date: 9 Sep 92 00:31:45 GMT Organization: Swarthmore College Computing Center In article <D88-JWA.92Sep7111945@dront.nada.kth.se> Jon W{tte, d88-jwa@dront.nada.kth.se writes: >Source avaialble for the macintosh is LZRW-1b which is a high- >speed, LZ-77 derivative. > >"Yabba" is an LZ-78 relative that also is in the public domain. > Does anyone have the address of an FTP site for the LZ* source? --------------------------- From: mxmora@unix.sri.com (Matthew Xavier Mora) Subject: How do you launch a Control Panel? Date: 3 Sep 92 22:10:29 GMT Organization: SRI International How do you launch a control panel under system 7? LaunchApplication doesn't seem to work. LaunchDeskAccessory doesn't work either. (I know but I tried it anyway). Is OpenDeskAcc my only hope? Has anybody done this? I can't post an event to the finder because it might be closed or busy coping a file. Thanks Matt +++++++++++++++++++++++++++ From: ldo@waikato.ac.nz (Lawrence D'Oliveiro, Waikato University) Date: 5 Sep 92 05:39:44 GMT Organization: University of Waikato, Hamilton, New Zealand In article <mxmora-030992150746@css-mac1.sri.com>, mxmora@unix.sri.com (Matthew Xavier Mora) writes: > How do you launch a control panel under system 7? LaunchApplication > doesn't seem to work. LaunchDeskAccessory doesn't work either. (I know but > I tried it anyway). Is OpenDeskAcc my only hope? > > Has anybody done this? I can't post an event to the finder because it might > be closed or busy coping a file. Control panels don't run as separate processes with Finder 7. They run within the Finder's process context. That's why there is no Process Manager call for opening them; you really have to do it by posting an event to the Finder. My Default Application control panel relies on this: that's how it's able to patch the running Finder without installing INITs or any such black magic. Lawrence D'Oliveiro fone: +64-7-856-2889 Computer Services Dept fax: +64-7-838-4066 University of Waikato electric mail: ldo@waikato.ac.nz Hamilton, New Zealand 37^ 47' 26" S, 175^ 19' 7" E, GMT+12:00 The Internet protocol standardization process will now consist of three stages: TRFCs (Tentative Requests for Comment), FRFCs (Firm Requests for Comment), and DFCs (Demands for Comment). --------------------------- From: brad@vedge.UUCP (Brad Fowlow) Subject: Top byte of 24-bit offscreen gworld? Date: 3 Sep 92 18:51:40 GMT Organization: Visual Edge Software, St. Laurent, Quebec Can anyone say how quickly or terribly things might go awry if I try to keep some extra info in the top 8 bits of the pixel data of a 24-bit offscreen gworld? That byte is awfully tempting as a place for alpha stuff. And for the moment I'm not too concerned with how the code will react under system 12; I just don't want sneaking randomness to show up next week. Have I missed something in IM6 that unequivocally rules this out, or permits it? Has anyone else been similiarly tempted? - -- - ------------------------------------------------------------- Brad Fowlow brad@vedge.com Visual Edge Software Limited +++++++++++++++++++++++++++ From: ldo@waikato.ac.nz (Lawrence D'Oliveiro, Waikato University) Date: 4 Sep 92 17:47:49 +1200 Organization: University of Waikato, Hamilton, New Zealand In article <28628@vedge.UUCP>, brad@vedge.UUCP (Brad Fowlow) writes: > Can anyone say how quickly or terribly things might > go awry if I try to keep some extra info in the top 8 bits > of the pixel data of a 24-bit offscreen gworld? > > That byte is awfully tempting as a place for alpha stuff. > And for the moment I'm not too concerned with how the code > will react under system 12; I just don't want sneaking > randomness to show up next week. > Have I missed something in IM6 that unequivocally rules > this out, or permits it? Has anyone else been similiarly tempted? I get the feeling from IM6 that there is no great crime in using the extra byte for your own purposes. Just bear in mind that most QuickDraw drawing calls clear that byte in pixels that they modify; I think it's only CopyBits and its relatives that would preserve that byte, and then probably not in all circumstances. Basically Apple isn't interested in adding future alpha channel support or making any future use of that byte. Or so I gather. Remember, at least one of Apple's video cards doesn't even have RAM allocated to store that byte! And, let's face it--what can you do with alpha channels, that you can't do using "blend" mode with CopyBits, and blend mask pixmaps with CopyMask/CopyDeepMask? These existing QuickDraw blending facilities are so much more powerful... Lawrence D'Oliveiro fone: +64-7-856-2889 Computer Services Dept fax: +64-7-838-4066 University of Waikato electric mail: ldo@waikato.ac.nz Hamilton, New Zealand 37^ 47' 26" S, 175^ 19' 7" E, GMT+12:00 Q: Why do dogs make poor astronauts? A: They keep sticking their head out the window and burning up on re-entry. +++++++++++++++++++++++++++ From: Jim Cook <J.Cook@ENS.Prime.COM> Organization: Prime Computer, Inc. Date: Fri, 4 Sep 1992 18:10:47 GMT In article <28628@vedge.UUCP> brad@vedge.com (Brad Fowlow) writes: >Can anyone say how quickly or terribly things might >go awry if I try to keep some extra info in the top 8 bits >of the pixel data of a 24-bit offscreen gworld? > >That byte is awfully tempting as a place for alpha stuff. >And for the moment I'm not too concerned with how the code >will react under system 12; I just don't want sneaking >randomness to show up next week. >Have I missed something in IM6 that unequivocally rules >this out, or permits it? Has anyone else been similiarly tempted? The only think I know is that you better check the spec's on your video board. Some video boards implement 32 bits per pixel and ignore the high 8 bits and some board don't have the memory there to save money. Check your board and the boards of any other Macs you want to run on. Since I don't know many video board vendors that make use of the fourth byte in 32-bit (24-bit) color mode (TruVision was one vendor), I don't know how rigorous Apple has been in testing to see that byte makes it out to the video board complete and unchanged. On the other hand, I don't have any evidence that it won't - just idle curiosity. Jim +++++++++++++++++++++++++++ From: mkelly@sisters.cs.uoregon.edu (Michael A. Kelly) Organization: University of Oregon Computer and Information Sciences Dept. Date: Fri, 4 Sep 1992 20:17:11 GMT In article <1992Sep4.181047.16762@primerd.prime.com> <J.Cook@ENS.Prime.COM> writes: >In article <28628@vedge.UUCP> brad@vedge.com (Brad Fowlow) writes: >>Can anyone say how quickly or terribly things might >>go awry if I try to keep some extra info in the top 8 bits >>of the pixel data of a 24-bit offscreen gworld? >> >>That byte is awfully tempting as a place for alpha stuff. >>And for the moment I'm not too concerned with how the code >>will react under system 12; I just don't want sneaking >>randomness to show up next week. >>Have I missed something in IM6 that unequivocally rules >>this out, or permits it? Has anyone else been similiarly tempted? > >The only think I know is that you better check the spec's on your video board. >Some video boards implement 32 bits per pixel and ignore the high 8 bits and >some board don't have the memory there to save money. Check your board and >the boards of any other Macs you want to run on. If the extra memory isn't available, the card should take care of that itself. Since there's no such thing as a 24-bit GWorld, those cards must be taking the extra byte into account. If a card does have the extra memory, and it uses that memory internally, it should still be masking off the extra byte in a 32-bit GWorld. If the card has the memory but doesn't use it, it doesn't matter whether or not it copies the extra byte. This is all assuming you're using QuickDraw. I haven't tested this, but it _should_ work that way. Please correct me if I'm wrong. Mike. - -- _____________________________________________________________________________ Michael A. Kelly University of Oregon mkelly@cs.uoregon.edu Computer Science Department _____________________________________________________________________________ +++++++++++++++++++++++++++ From: paul@taniwha.UUCP (Paul Campbell) Date: 8 Sep 92 07:06:08 GMT Organization: Taniwha Systems Design In article <28628@vedge.UUCP> brad@vedge.com (Brad Fowlow) writes: >Can anyone say how quickly or terribly things might >go awry if I try to keep some extra info in the top 8 bits >of the pixel data of a 24-bit offscreen gworld? > >That byte is awfully tempting as a place for alpha stuff. >And for the moment I'm not too concerned with how the code >will react under system 12; I just don't want sneaking >randomness to show up next week. >Have I missed something in IM6 that unequivocally rules >this out, or permits it? Has anyone else been similiarly tempted? Well you can go ahead and put data in the top byte BUT don't expect QuickDraw to do anything usefull with it .... despite what IM sais a later note in Develop said recently that you should NOT depend on CopyBits preserving that byte - even if it dows now it might not in the future - or in all the circumstances you can test today. All 24-bit cards I know of that ship today do NOT preserve the top eight bits a pixel - but then they aren't GWorlds and you can't get usefull data on there with out CopyBits anyway Paul - -- Paul Campbell UUCP: ..!mtxinu!taniwha!paul AppleLink: CAMPBELL.P "Most American's day to day experience of 'Family Values' is found in brightly colored fliers from such organisations as Target and K-Mart." --------------------------- End of C.S.M.P. Digest **********************